@Info Domme greets you and asks if you are ready to be teased. Written by: tigrotto. Special thanks: Daragorn

@NullResponse @RapidCodeOn
@NullResponse @CheckFlag(tgr8_Flag_not_show_up) @Goto(Start)

(tgr8_Flag_not_show_up)
@NullResponse @CheckDate(tgr8_Not_show_up, Can_start_Tease_AI)
@NullResponse @Call(Custom\Call Return\Are you ready to be teased\Punishment_1.txt)

(Can_start_Tease_AI)
@NullResponse @CallReturn(Custom\Call Return\Are you ready to be teased\Punishment_1.txt, Check_rules)
@NullResponse @RapidCodeOff

(Start)
#GreetSub @NoTypo
Are you ready to be teased... @NoTypo
and denied #Grin #GeneralTime #SubName? @NoTypo
[yes] Mmmm...
[no] No? @Goto(No)
@DifferentAnswer #YesorNo Do not make me angry #PetName, we have just started!!
Are you sure #PetName?
Are you sure you can withstand all that I have in mind for you #GeneralTime?
All the strokes that I'm going to make you give to that #Cock...
All the edges that I'm #Gonna make you hold...
All the punishments you're #Gonna take...
There is nothing to be ashamed to admit that you are not sure you can endure all this @Wait(3)
See...
At this point even I would not be so sure I could handle all this
If you don't think you are ready, just tell me...
and I will make things a little easier for you
But just a little...
We don't want to spoil all the fun, don't we #PetName? #Grin
So, are you ready for this #SubName?
[yes] #Good!
[no] No? @Goto(Dishonest)
@DifferentAnswer #YesorNo
Is your #Cock rock hard?
[yes] Mmmm... I love when you come prepared... @Chance33(Really_happy) @Goto(Warm_up,Start_stroking)
[no] Well... Nobody is perfect, isn't it? @Goto(Start_stroking)

(Really_happy)
You know... It made me really happy #GeneralTime
to find you prepared for this session
So I decided to #Reward_you with some pictures I found earlier #GeneralTime
@NullResponse @ShowBlogImage
@NullResponse @ShowBlogImage
@NullResponse @ShowBlogImage
@NullResponse @ShowBlogImage
(Loop)
@NullResponse @ShowBlogImage
@NullResponse @ShowBlogImage
@NullResponse @ShowBlogImage
@NullResponse @Chance70(Loop)
Did you like them?
[yes] #Good. Because I wanted to get you squirming in that chair before we even started #EmoteRandom @Goto(Start_stroking)
[no] Mmmm... I think you need a bit of warm-up @Goto(Warm_up_exercise_1,Warm_up_exercise_2)
@DifferentAnswer #YesorNo

(Warm_up)
But I think your hard rock #Cock needs a warm-up
You should always do a warm-up before starting any physical activity, you know that... #Grin @Goto(Warm_up_exercise_1,Warm_up_exercise_2)

(Warm_up_exercise_1)
<i>You</i> are #Gonna do three set of three edges
<i>BUT</i> @Wait(2)
with a shorter cooldown time for every set
Get ready #SubName!
#Edge @Edge(NoHold) @MultipleEdges(3,15)
You survived the first round #PetName!
That's good!
But I don't know if you will survive the last two rounds... #Grin
You have to face two rounds back to back
holding the last edge of each round
Do you think you're ready #SubName?
[yes] Good! @Goto(Get_ready)
[no] #YoureGoingToDoIt @Goto(Get_ready)
@DifferentAnswer #YoureGoingToDoIt @Goto(Get_ready)
(Get_ready)
Get ready #SubName!
Ready...
steady...
#Edge @Edge(Hold) @MultipleEdges(3,10)
Third round!
#Edge @Edge(Hold) @MultipleEdges(3,5)
#Good #PetName!
You finished the warm-up
Now, get some rest #SubName
but be ready to start stroking that #Cock again! @Wait(#Random(15,30)) @Goto(Start_stroking)

(Warm_up_exercise_2)
For this exercise we're #Gonna play a little game
A edge ladder game
When you climb the ladder you're #Gonna have to hold longer edges
When you descend the ladder you're #Gonna hold shorter edges
Don't worry, it's just a small ladder
I'm not #Gonna drive you insane
...yet
Now, get ready to begin! @RTOn
#Edge @EdgeHold(5)
#LetTheEdgeFade @Wait(5)
#Edge @EdgeHold(10)
#LetTheEdgeFade @Wait(10)
#Edge @EdgeHold(15)
#LetTheEdgeFade @Wait(15)
#Edge @EdgeHold(20)
#LetTheEdgeFade @Wait(20)
#Edge @EdgeHold(25)
#LetTheEdgeFade @Wait(25)
#Edge @EdgeHold(30)
#LetTheEdgeFade @Wait(30)
#Edge @EdgeHold(25)
#LetTheEdgeFade @Wait(25)
#Edge @EdgeHold(20)
#LetTheEdgeFade @Wait(20)
#Edge @EdgeHold(15)
#LetTheEdgeFade @Wait(15)
#Edge @EdgeHold(10)
#LetTheEdgeFade @Wait(10)
#Edge @EdgeHold(5)
#LetTheEdgeFade @Wait(5) @RTOff
That was the last one #SubName
How's your #Cock doing so far?
I'll give you a few seconds to recover #PetName
because <i>real</i> #Stroking will start soon @Wait(#Random(20,30))

(Start_stroking)
#StartStroking #SubName @StartStroking

(Dishonest)
Poor #PetName...
You have no idea what you got yourself into... @NoTypo
I asked you if you were ready twice: @NoTypo
your first answer was YES @NoTypo
the second one was NO @NoTypo
Conclusion: @RTOn @NoTypo
you LIED! @NoTypo
To #Me! @NoTypo @RTOff
(Is_it_true)
Is it true #SubName? @Timeout(7, Is_it_true)
[yes] At least you admit it...
[no] You keep telling me lies #PetName! @Goto(End)
@DifferentAnswer #YesorNo
You know that there will be consequences, right?
You know I have to punish you now #SubName
and I know you know you deserve it...
But punishment could come in different ways and forms
It could mean @RT(prolonged periods of edging and denial, #Torture to your #Cock and #Balls)
or @RT(#Stroking to the #EdgeNoun repeatedly, God knows what)
I think the best punishment for you #GeneralTime is... @Goto(CBT, Edging)

(CBT)
...some #CBT! @NoTypo
Don't be afraid #PetName. I'm not #Gonna #Hurt you @NoTypo
I mean... @NoTypo
Not too much... #Grin @NoTypo
Now...

@NullResponse @RapidCodeOn
@NullResponse @If[#Random(1,99)]<=[#Random(25,35)]Then(Phone_ringing_CBT)
@NullResponse @Goto(Start_CBT)
@NullResponse @RapidCodeOff

(Phone_ringing_CBT)
Wait a moment, my phone is ringing...
Oh... Don't worry about your punishment
This is only a little delay... #Grin @Wait(20)
@RT(Look who's here #SubName!, Look who's here!, Look who joined us @SubName!, Look who joined us!) @TempFlag(CBT_Punishment) @Goto(Contact2, Contact3)

(Edging)
...edging! @Wait(5)
#Grin Calm down #PetName!
If I were you, I would not be so happy
I would have preferred some @RT(#CBT,harsh #CBT)
Why?
#CBT involves only physical pain
Only punching and beating your #Cock and #Balls
You could get used to it if only you were strong enough
That is its biggest limit
Although it is a very effective method to #Torture you #Grin
But
If you combine physical and psychological pain...
That's why edging is a subtler and trickier way to #Torture you
You can't get used to #Stroke knowing that you're #Gonna stop just a few strokes before cumming... @NoTypo
seeing your #Cock throbbing... @NoTypo
feeling your body squirming on the edge looking for an orgasm that will never cum... @NoTypo @RTOn
sorry... that will never come @NoTypo @RTOff
Enough talking, get ready to be punished!

@NullResponse @RapidCodeOn
@NullResponse @If[#Random(1,99)]<=[#Random(25,35)]Then(Phone_ringing_edging)
@NullResponse @Goto(Start_CBT)
@NullResponse @RapidCodeOff

(Phone_ringing_edging)
Wait a moment, my phone is ringing...
Oh... Don't worry about your punishment
This is only a little delay... #Grin @Wait(20)
@RT(Look who's here #SubName!, Look who's here!, Look who joined us @SubName!, Look who joined us!) @TempFlag(Edging_Punishment) @Goto(Contact2, Contact3)

(Contact2)
Do you remember my friend #Contact2 #SubName? @AddContact2
@Contact2 Hello #SubName!
@Contact2 I hope I didn't interrupt anything important...
Don't worry #Contact2... We were having a conversation about honesty, didn't we #SubName?
@Contact2 Did #SubName lie to you #DomName?
Yes #Contact2
@Contact2 You know you did a bad thing #SubName
@Contact2 I think you should apologize to #DomName
[Sorry, sorry, Excuse me, excuse me, Pardon, pardon, Apologize, apologize] I forgive you #SubName
@DifferentAnswer @Contact2 Apologize #SubName!
@Contact2 What kind of punishment did you have in mind #ShortName? @CheckFlag(CBT_Punishment, CBT_Punishment_#Contact2) @CheckFlag(Edging_Punishment, Edging_Punishment_#Contact2)

(CBT_Punishment_#Contact2)
#CBT
@Contact2 Since he apologized to you, you could reduce his punishment a little
I have to think about it... @Wait(5)
Ok #Contact2
I will <i>slightly</i> reduce the intensity of his punishment @TempFlag(Reduce_CBT_punishment)
@Contact2 Thank you very much #DomName @Goto(Start_CBT)

(Edging_Punishment_#Contact2)
I was going to make him edge
@Contact2 Since he apologized to you, you could reduce his punishment a little
I have to think about it... @Wait(5)
Ok #Contact2
I will <i>slightly</i> reduce the number of edges he owes me @TempFlag(Reduce_edging_punishment)
@Contact2 Thank you very much #DomName

(Contact3)
Do you remember my friend #Contact3 #SubName? @AddContact3
@Contact3 Hello #SubName!
@Contact3 I hope I didn't interrupt anything important...
Don't worry #Contact3... We were having a conversation about honesty, didn't we #SubName?
@Contact3 Awww... Honesty it's not one of my problems...
What do you mean?
@Contact3 What I mean is: you know my methods #ShortName...
Yeah I saw you with your slaves...
I saw their #Cock trapped in a chastity cage...
And I saw how their expressions changed when you came into the room holding the keys of their cages...
@Contact3 Yeah, they thought I was going to free their #Cock @RTOn
but you added two more months of chastity! #EmoteHappy @RTOff
@Contact3 Keep a man denied in a cage and he will do almost everything just to have a small chance to be freed and cum again
#Contact3 So... What have you done to upset #DomHonorific #DomName, #PetName?
[lie, lied, I lied, tell a lie, told a lie, tell untruth, told untruth, I lied to her, I told her a lie, I lied to her] @Contact3 You lied?
@DifferentAnswer What have you done?
@Contact3 That's not a something a #PetName like you should do #SubName...
@Contact3 What are you #Gonna do about it #ShortName? @CheckFlag(CBT_Punishment, CBT_Punishment_#Contact3) @CheckFlag(Edging_Punishment, Edging_Punishment_#Contact3)

(CBT_Punishment_#Contact3)
I was thinking to #CBT but, you know, after a while it gets repetitive... @DeleteFlag(CBT_Punishment)
@Contact3 It seems you ran out of ideas #ShortName...
I could really use some help: do you have any idea #Contact3?
@Contact3 Glad you asked it #DomName
@Contact3 Actually I have a few games in mind I think you'll like
@Contact3 Get ready @SubName... #Grin
@Contact3 I suspect you won't like my games...#Grin @Goto(Game1,Game2)

(Edging_Punishment_#Contact3)
We were about to play a little edging game
@Contact3 I love edging games
@Contact3 Can I stay here and watch?
Of course #Contact3! You may even edge him yourself if you wish @Goto(Start_edging_game)

(Game1)
@Contact3 This game is called edges&ballbusting...
Sounds interesting...
@Contact3 As the name says you, #PetName, are #Gonna edge... @RTOn
and bust your #Balls in your cooldown time
@Contact3 That's right #ShortName! @RTOff
I like it #Contact3!
Do you like it #RandomName?
@Contact3 He doesn't have to like it #ShortName
@Contact3 #YoureGoingToDoIt
@Contact3 Now #DomName, choose the number of edges you want him to do

@NullResponse @RapidCodeOn
@NullResponse @SetVar[tgr8_Game1_CBT_min]=[#Random(13,17)]
@NullResponse @SetVar[tgr8_Game1_CBT_max]=[#Random(27,30)]
@NullResponse @SetVar[Game1_number_of_edges]=[#Random(#Var[tgr8_Game1_CBT_min],#Var[tgr8_Game1_CBT_max])]
@NullResponse @DeleteVar[tgr8_Game1_CBT_min,tgr8_Game1_CBT_max]
@NullResponse @RapidCodeOff
I chose
@Contact3 Good
@Contact3 Now that we have the number of edges we need another number
The cooldown time...
@Contact3 Exactly
@NullResponse @RapidCodeOn
@NullResponse @SetVar[Game1_cooldown_time]=[#Random(10,15)]
@NullResponse @RapidCodeOn
Chose
@Contact3 Do you want to tell him the numbers you chose? @Goto(tell_Game1, do_not_tell_Game1)

(tell_Game1)
Yes
The number of edges I thought for you #SubName is: @ShowVar[Game1_number_of_edges]
While your cooldown time is: @ShowVar[Game1_cooldown_time] seconds @Goto(Continue_Game1)

(do_not_tell_Game1)
No
I want to keep them for me #Contact3
@Contact3 I guess somebody here is still angry for that lie #RandomName... #Grin @Goto(Continue_Game1)

(Continue_Game1)
@Contact3 Now comes the ballbusting part...
@Contact3 In your cooldown time I want you to slap your balls <i>HARD<i> @RT(2,3) times #RandomName
It's #Gonna be a lot of slapping #Contact3...
@Contact3 I know... I know...
@Contact3 That's why I like so much this game #Grin
@Contact3 At the end of my game, what he's #Gonna feel will be only @RT(ache, pain) and desperation...
You're very cruel #Contact3! @RTOn
@Contact3 No
@Contact3 I'm not @RTOff
@Contact3 That's what he deserves
@Contact3 That's what a #PetName deserves
@Contact3 Am I right #PetName?
[yes] @Contact3 #Good
[no] @Contact3 Oh well. You just added 5 more edges to what you owe us #SubName @ChangeVar[Game1_number_of_edges]=[Game1_number_of_edges]+[5]
@DifferentAnswer @Contact3 #YesorNo
#Contact3 I think you should have the honor of edging him
@Contact3 Are you sure #ShortName?
@Contact3 You're his #DomHonorific. I don't want to...
Don't worry #Contact3
My toys are your toys, you know that
However, I like watching my #PetName being dominated by another #DomHonorific from time to time...
@Contact3 Well #SubName, you heard #ShortName...
@Contact3 It's only #Me and you now... @Goto(Edge_no_hold, Edge_hold) @RTOn

(Edge_no_hold)
@Contact3 #Edge @Edge(NoHold) @MultipleEdges(#Var[Game1_number_of_edges],#Var[Game1_cooldown_time]) @RTOff @Goto(End_Game1)

(Edge_hold)
@NullResponse @RTOff
@Contact3 I almost forgot to tell you
@Contact3 I'm #Gonna make you hold the last edge
@Contact3 What I still don't know is how long <i>YOU</i> are #Gonna hold it!
@Contact3 Well, I guess we'll find out soon #Grin @Goto(Normal_hold, Long_hold, Extreme_hold) @RTOn

(Normal_hold)
@Contact3 #Edge @Edge(Hold) @MultipleEdges(#Var[Game1_number_of_edges],#Var[Game1_cooldown_time]) @RTOff @TempFlag(Flag_normal_hold) @Goto(End_Game1)

(Long_hold)
@Contact3 #Edge @Edge(LongHold) @MultipleEdges(#Var[Game1_number_of_edges],#Var[Game1_cooldown_time]) @RTOff @TempFlag(Flag_long_hold) @Goto(End_Game1)

(Extreme_hold)
@Contact3 #Edge @Edge(ExtremeHold) @MultipleEdges(#Var[Game1_number_of_edges],#Var[Game1_cooldown_time]) @RTOff @TempFlag(Flag_extreme_hold) @Goto(End_Game1)

(End_Game1)
@Contact3 You made it #RandomName! @DeleteVar[Game1_number_of_edges,Game1_cooldown_time]
@Contact3 Look how wet your #Pussy is!
You made me really #DomHorny #Contact3
It was really #Hot! And that last edge...
Wow!
I think I came #Random(3,6) times watching you
@Contact3 You enjoyed the show, huh?!
Yeah, definitely... #EmoteHappy
@Contact3 I can't say the same for #SubName here @CheckFlag(Flag_normal_hold) @CheckFlag(Flag_long_hold) @CheckFlag(Flag_extreme_hold) @Goto(Goodbye_time)

(Flag_normal_hold)
@Contact3 You seem a bit shocked #RandomName
@Contact3 It was only a normal hold
@Contact3 #ShortName you should let me train @SubName to hold edges
@Contact3 You can't afford to have a #PetName that is barely able to hold an edge for a minute
Yeah you're right #Contact3
I should really let him come by your house for some training sessions @Goto(Goodbye_time)

(Flag_long_hold)
@Contact3 He seems a bit shocked, don't you think #DomName?
@Contact3 That long edge was too much to hold for you?
It looks like that last edge was too much for him
Look #Contact3 all these veins pumping blood to that cock head
@Contact3 I love making #Cock throbbing...
@Contact3 I bet that just a little gentle touch to your #Cock sweet spot would make you #Cum straight away #SubName...
@Contact3 but I prefer slaves with a big pair of blue balls!!! #Grin
And this is only the beginning #Contact3
Real stroking hasn't started yet!
@Contact3 Well, then #SubName...
@Contact3 Looks like your #Cock is #Gonna #Leak a lot today #Grin @Goto(Goodbye_time)

(Flag_extreme_hold)
@Contact3 He seems a bit shocked
@Contact3 That extreme hold must have consumed you
It looks like that last edge was too much for him
Look #Contact3 all these veins pumping blood to that cock head
@Contact3 I love making #Cock throbbing...
@Contact3 I bet that just a little gentle touch to your #Cock sweet spot would make you #Cum straight away #SubName...
@Contact3 but I prefer slaves with a big pair of blue balls!!! #Grin
And this is only the beginning #Contact3
Real stroking hasn't started yet!
@Contact3 Well then #SubName...
@Contact3 Looks like your #Cock is #Gonna #Leak a lot today #Grin @Goto(Goodbye_time)

(Game2)
@Contact3 This game is divided in rounds
@Contact3 Each round has the same amount of edges
@Contact3 but different cooldown times
@Contact3 So #ShortName...
Tell me #Contact3. What do I need to do?
@Contact3 I want you to think of two numbers
@Contact3 The first will be the number of rounds
@Contact3 The second will determine the number of edges per round
@NullResponse @RapidCodeOn
@NullResponse @SetVar[Game2_number_of_rounds]=[#Random(4,7)]
@NullResponse @If[Game2_number_of_rounds]=[4]Then(Game2_number_of_edges1)
@NullResponse @If[Game2_number_of_rounds]=[5]Then(Game2_number_of_edges2)
@NullResponse @If[Game2_number_of_rounds]=[6]Then(Game2_number_of_edges3)
@NullResponse @If[Game2_number_of_rounds]=[7]Then(Game2_number_of_edges4)
@NullResponse @RapidCodeOff

(Game2_number_of_edges1)
I chose the number of rounds #Contact3
@Contact3 Good. Now the number of edges per round #ShortName
@NullResponse @RapidCodeOn
@NullResponse @SetVar[Game2_number_of_edges_per_round]=[#Random(5,8)]
@NullResponse @RapidCodeOff
Ok, I decided @Goto(Continue_Game2)

(Game2_number_of_edges2)
I chose the number of rounds #Contact3
@Contact3 Good. Now the number of edges per round #ShortName
@NullResponse @RapidCodeOn
@NullResponse @SetVar[Game2_number_of_edges_per_round]=[#Random(4,7)]
@NullResponse @RapidCodeOff
Ok, I decided @Goto(Continue_Game2)

(Game2_number_of_edges3)
I chose the number of rounds #Contact3
@Contact3 Good. Now the number of edges per round #ShortName
@NullResponse @RapidCodeOn
@NullResponse @SetVar[Game2_number_of_edges_per_round]=[#Random(3,6)]
@NullResponse @RapidCodeOff
Ok, I decided @Goto(Continue_Game2)

(Game2_number_of_edges4)
I chose the number of rounds #Contact3
@Contact3 Good. Now the number of edges per round #ShortName
@NullResponse @RapidCodeOn
@NullResponse @SetVar[Game2_number_of_edges_per_round]=[#Random(3,5)]
@NullResponse @RapidCodeOff
Ok, I decided @Goto(Continue_Game2)

(Continue_Game2)
@Contact3 Do you want to tell @SubName the numbers you chose? @Goto(tell_Game2, do_not_tell_Game2)

(tell_Game2)
Yes
The number of rounds I decided is @ShowVar[Game2_number_of_rounds]
While the number of edges per round you owe us is @ShowVar[Game2_number_of_edges_per_round] @Goto(Prepare_for_Game2_start)

(do_not_tell_Game2)
No
I want to keep them for me #Contact3
@Contact3 I guess somebody here is still angry for that lie #RandomName... #Grin @Goto(Prepare_for_Game2_start)

(Prepare_for_Game2_start)
Do you need my help for this game or can I relax and watch #Contact3?
@Contact3 Well the game is divided in rounds so we can alternate
Fantastic!
@Contact3 While we take care of your #Cock
@Contact3 You are #Gonna take care of your #Balls
@Contact3 I want you to @RT(slap, beat, punch) your #Balls <i>HARD<i> @RT(2,3) times during your cooldown time
@Contact3 This should help you focus on not to #Cum
Let's start then! @Goto(Game2_cooldown_time1,Game2_cooldown_time2,Game2_cooldown_time3)

(Game2_cooldown_time1)
@NullResponse @RapidCodeOn
@NullResponse @SetVar[Game2_cooldown_time]=[#Random(20,25)] @SetFlag(Flag1_Game2_cooldown_time)
@NullResponse @Goto(Edged_by_Domme,Edged_by_Contact3)
@NullResponse @RapidCodeOff

(Game2_cooldown_time2)
@NullResponse @RapidCodeOn
@NullResponse @SetVar[Game2_cooldown_time]=[#Random(10,15)] @SetFlag(Flag2_Game2_cooldown_time)
@NullResponse @Goto(Edged_by_Domme,Edged_by_Contact3)
@NullResponse @RapidCodeOff

(Game2_cooldown_time3)
@NullResponse @RapidCodeOn
@NullResponse @SetVar[Game2_cooldown_time]=[#Random(3,5)] @SetFlag(Flag3_Game2_cooldown_time)
@NullResponse @Goto(Edged_by_Domme,Edged_by_Contact3)
@NullResponse @RapidCodeOff

(Edged_by_Domme)
@RT(It's my turn now!,It's my turn to edge #SubName now!,My turn!,Get ready to edge for #Me!,Get ready to edge for #Me, #SubName!) @RTOn @Goto(Edged_by_Domme_mode1, Edged_by_Domme_mode2)

(Edged_by_Domme_mode1)
#Edge @Edge(NoHold) @MultipleEdges(#Var[Game2_number_of_edges_per_round],#Var[Game2_cooldown_time]) @RTOff @Goto(Game2_command_centre)

(Edged_by_Domme_mode2)
#Edge @Edge(Hold) @MultipleEdges(#Var[Game2_number_of_edges_per_round],#Var[Game2_cooldown_time]) @RTOff @Goto(Game2_command_centre)

(Edged_by_Contact3)
@Contact3 @RT(It's my turn now!,It's my turn to edge #SubName now!,My turn!,Get ready to edge for #Me!,Get ready to edge for #Me, #SubName!) @RTOn @Goto(Edged_by_Contact3_mode1,Edged_by_Contact3_mode2)

(Edged_by_Contact3_mode1)
@Contact3 #Edge @Edge(NoHold) @MultipleEdges(#Var[Game2_number_of_edges_per_round],#Var[Game2_cooldown_time]) @RTOff @Goto(Game2_command_centre)

(Edged_by_Contact3_mode2)
@Contact3 #Edge @Edge(Hold) @MultipleEdges(#Var[Game2_number_of_edges_per_round],#Var[Game2_cooldown_time]) @RTOff @Goto(Game2_command_centre)

(Game2_command_centre)
@NullResponse @RapidCodeOn
@NullResponse @ChangeVar[Game2_number_of_rounds]=[Game2_number_of_rounds]-[1]
@NullResponse @If[Game2_number_of_rounds]=[0]Then(End_Game2)
@NullResponse @CheckFlag(Flag1_Game2_cooldown_time) @CheckFlag(Flag2_Game2_cooldown_time) @CheckFlag(Flag3_Game2_cooldown_time)
@NullResponse @RapidCodeOff

(Flag1_Game2_cooldown_time)
@NullResponse @RapidCodeOn
@NullResponse @DeleteFlag(Flag1_Game2_cooldown_time)
@NullResponse @Goto(Game2_cooldown_time2,Game2_cooldown_time3)
@NullResponse @RapidCodeOff

(Flag2_Game2_cooldown_time)
@NullResponse @RapidCodeOn
@NullResponse @DeleteFlag(Flag2_Game2_cooldown_time)
@NullResponse @Goto(Game2_cooldown_time1,Game2_cooldown_time3)
@NullResponse @RapidCodeOff

(Flag3_Game2_cooldown_time)
@NullResponse @RapidCodeOn
@NullResponse @DeleteFlag(Flag3_Game2_cooldown_time)
@NullResponse @Goto(Game2_cooldown_time1,Game2_cooldown_time2)
@NullResponse @RapidCodeOff

(End_Game2)
@NullResponse @RapidCodeOn
@NullResponse @ChangeVar[Game2_number_of_edges]=[Game2_number_of_rounds]*[Game2_number_of_edges_per_round]
@NullResponse @DeleteVar[Game2_number_of_rounds,Game2_number_of_edges_per_round,Game2_cooldown_time]
@NullResponse @DeleteFlag(Flag1_Game2_cooldown_time,Flag2_Game2_cooldown_time,Flag3_Game2_cooldown_time)
@NullResponse @RapidCodeOff

@Contact3 That was the last edge you owed us #RandomName!
That was amazing #Contact3!
@Contact3 I bet you want to #Cum <i>soooo</i> desperately now #SubName...
You said it #Contact3. We just edged him @ShowVar[Game2_number_of_edges] times

@NullResponse @RapidCodeOn
@NullResponse @DeleteVar[Game2_number_of_edges]
@NullResponse @RapidCodeOff

@Contact3 He must have a massive load built up on those #Balls
Look at his throbbing #Cock!
I believe he's feeling all that cum trying to find its way out
still he has to go against his instinct that tells him to #Cum
and keep it stored in those #Balls
@Contact3 I bet I could make you #Cum just with a gentle touch to your #Cock' sweet spot #SubName... @RTOn
but we prefer an obedient #PetName with a huge pair of blue balls! @RTOff
@Contact3 Like yours #SubName!
@Contact3 Will you let him rest now #ShortName?
Just a bit, I have other plans for him #GeneralTime
This is only the beginning #Contact3
Real stroking hasn't started yet!
@Contact3 Well then #SubName...
@Contact3 Looks like your #Cock is #Gonna #Leak and suffer a lot today #SubName... #Grin @Goto(Goodbye_time)

(Start_CBT)
@CBTBalls
This will teach you to behave better @RT(in my presence, with #Me), #PetName!
#HowAreYourBallsFeeling
#Balls_in_pain
You know what that means #SubName?
@CBTCock
@NullResponse @CheckFlag(Reduce_CBT_punishment)
And again your #Cock
@CBTCock
By now your #Cock should be a mess...
By the time I'm done with you your #Balls will be a mess too...
@CBTBalls
I really hope you learned the lesson #SubName
otherwise next time I'll have to beat that #Cock even harder that I fear you'll pass out @CheckFlag(Stay_or_leave?)
#BallBusting_1_A2
How is your #Cock doing #SubName? @Goto(Goodbye_time)

(Reduce_CBT_punishment)
I promised to reduce your punishment
so I'm #Gonna stop now @Goto(Goodbye_time)

(Start_edging_game)
Here's what we're #Gonna do: we're #Gonna play a little game
I will think an adequate amount of edges for your punishment
and all you have to do is try to guess it
Do you like the idea?
[yes] #Good
[no] #YoureGoingToDoIt
@DifferentAnswer #YesorNo

@NullResponse @RapidCodeOn
@NullResponse @SetVar[tgr8_edging_game_min]=[#Random(13,17)]
@NullResponse @SetVar[tgr8_edging_game_max]=[#Random(27,30)]
@NullResponse @SetVar[Domme_amount_of_edges]=[#Random(#Var[tgr8_edging_game_min],#Var[tgr8_edging_game_max])]
@NullResponse @SetVar[Domme_amount_of_edges_2]=[#Var[Domme_amount_of_edges]]
@NullResponse @ChangeVar[Domme_amount_of_edges_2]=[Domme_amount_of_edges_2]-[7]
@NullResponse @RapidCodeOff
@Group(D) The number of edges you owe me goes from @ShowVar[tgr8_edging_game_min] to @ShowVar[tgr8_edging_game_max]
@Group(D2) @Contact2 The number of edges you owe us goes from @ShowVar[tgr8_edging_game_min] to @ShowVar[tgr8_edging_game_max]
@Group(D3) @Contact3 The number of edges you owe us goes from @ShowVar[tgr8_edging_game_min] to @ShowVar[tgr8_edging_game_max]
@Group(D) Which is the right amount of edges you think you owe me? @InputVar[Sub_amount_of_edges]
@Group(D2) @Contact2 Which is the right amount of edges you think you owe me? @InputVar[Sub_amount_of_edges]
@Group(D3) @Contact3 Which is the right amount of edges you think you owe me? @InputVar[Sub_amount_of_edges]
@NullResponse @RapidCodeOn
@NullResponse @DeleteVar[tgr8_edging_game_min,tgr8_edging_game_max]
@NullResponse @If[Sub_amount_of_edges]<[Domme_amount_of_edges]Then(Correct_amount_is)
@NullResponse @If[Sub_amount_of_edges]=[Domme_amount_of_edges]Then(Guessed)
@NullResponse @If[Sub_amount_of_edges]>[Domme_amount_of_edges]Then(The_more_the_better)
@NullResponse @RapidCodeOff

(Correct_amount_is)
@NullResponse @RapidCodeOn
@NullResponse @If[Sub_amount_of_edges]<=[Domme_amount_of_edges_2]Then(Way_too_low)
@NullResponse @RapidCodeOff
@ShowVar[Sub_amount_of_edges] edges are not an adequate punishment for lying to #Me #RandomName!
@Group(D) I will not tell you how many edges you owe me
@Group(D2) I will not tell you how many edges you owe us
@Group(D3) I will not tell you how many edges you owe us
I want to see the desperation in your eyes for not knowing how many times you will have to edge
And since you do not seem to understand the severity of your behavior
@Group(D) I'm gonna add a few edges to what you owe me
@Group(D2) I'm gonna add a few edges to what you owe us
@Group(D3) I'm gonna add a few edges to what you owe us

@NullResponse @RapidCodeOn
@NullResponse @ChangeVar[Domme_amount_of_edges]=[Domme_amount_of_edges]+[#Random(5,10)]
@NullResponse @ChangeVar[Domme_amount_of_edges_start]=[Domme_amount_of_edges]+[0] @CheckFlag(Reduce_edging_punishment)
@NullResponse @RapidCodeOff

And now... @Goto(Start_edging)

(Way_too_low)
Are you kidding me?
@ShowVar[Sub_amount_of_edges] edges are not even remotely the right punishment for lying to #Me
@Group(D) I won't tell you how many edges you owe me
@Group(D2) I won't tell you how many edges you owe us
@Group(D3) I won't tell you how many edges you owe us
I want to see the desperation in your eyes for not knowing how many times you will have to edge
And since you do not seem to understand the severity of your behavior
@Group(D) I think I'll add an extra amount of edges to what you owe me
@Group(D2) I think I'll add an extra amount of edges to what you owe us
@Group(D3) I think I'll add an extra amount of edges to what you owe us

@NullResponse @RapidCodeOn
@NullResponse @ChangeVar[Domme_amount_of_edges]=[Domme_amount_of_edges]+[#Random(10,15)]
@NullResponse @ChangeVar[Domme_amount_of_edges_start]=[Domme_amount_of_edges]+[0] @CheckFlag(Reduce_edging_punishment)
@NullResponse @RapidCodeOff

And now... @Goto(Start_edging)

(Guessed)
You guessed! Today must be your lucky day #SubName! @CheckFlag(Reduce_edging_punishment) @Goto(Start_edging)

(The_more_the_better)
@Group(D) I was thinking to @ShowVar[Domme_amount_of_edges] edges
@Group(D) but I guess @ShowVar[Sub_amount_of_edges] is a good number too
@Group(D2) What do you think about @ShowVar[Sub_amount_of_edges] edges #Contact2? @Chance25(Too_much_edges)
@Group(D2) @Contact2 It's okay @RTOn
@Group(D2) @Contact2 but give him enough time to cooldown #ShortName, please!
@Group(D2) @Contact2 I don't like seeing him suffer too much! @RTOff
@Group(D3) What do you think about @ShowVar[Sub_amount_of_edges] edges #Contact3?
@Group(D3) @Contact3 A #PetName like #SubName must always accept what his #DomHonorific decides...
@Group(D3) @Contact3 and in this case <i>I</i> want to add some more edges #ShortName... @Goto(Add_some_more)

@NullResponse @RapidCodeOn
@NullResponse @ChangeVar[Domme_amount_of_edges]=[Sub_amount_of_edges]+[0]
@NullResponse @ChangeVar[Domme_amount_of_edges_start]=[Domme_amount_of_edges]+[0] @CheckFlag(Reduce_edging_punishment)
@NullResponse @RapidCodeOff

@Group(D) Well #SubName, now you owe me @ShowVar[Domme_amount_of_edges] edges @Goto(Start_edging)
@Group(D2) Now you owe us @ShowVar[Domme_amount_of_edges] edges @Goto(Start_edging)

(Too_much_edges)
@Group(D2) @Contact2 Don't be so cruel #ShortName!
@Grouo(D2) @Contact2 @ShowVar[Sub_amount_of_edges] are too much for his #Cock
@Group(D2) @Contact2 You're not making him edge yet, but he's already suffering!
@Group(D2) @Contact2 I can see it in his eyes!
@Group(D2) @Contact2 Please #ShortName, make him edge only @ShowVar[Domme_amount_of_edges] times!
@Group(D2) Okay #Contact2. You convinced me
@Group(D2) I'll make him edge only @ShowVar[Domme_amount_of_edges] times
@Group(D2) But only for this time #Contact2
@Group(D2) Next time you won't be so lucky #PetName...
@Group(D2) You should thank #Contact2 #SubName
@GRoup(D2) She really saved your #Ass!
[thank you,Thank you,thanks,Thanks,merci,Merci] @Group(D2) @Contact2 You're welcome #SubName!
@DifferentAnswer @Group(D2) I didn't hear the magic words #SubName!

@NullResponse @RapidCodeOn
@NullResponse @ChangeVar[Domme_amount_of_edges]=[Domme_amount_of_edges]+[0]
@NullResponse @ChangeVar[Domme_amount_of_edges_start]=[Domme_amount_of_edges]+[0]
@NullResponse @RapidCodeOff

@Group(D2) Now you owe us @ShowVar[Domme_amount_of_edges] edges @Goto(Start_edging)

(Add_some_more)
@NullResponse @RapidCodeOn
@NullResponse @ChangeVar[Domme_amount_of_edges]=[Sub_amount_of_edges]+[5]
@NullResponse @ChangeVar[Domme_amount_of_edges_start]=[Sub_amount_of_edges]+[5]
@NullResponse @RapidCodeOff

@Group(D3) @Contact3 Now you owe us @ShowVar[Domme_amount_of_edges] edges #SubName... @Goto(Start_edging)

(Reduce_edging_punishment)
As promised I will slightly reduce the number of edges you owe us
@NullResponse @RapidCodeOn
@NullResponse @ChangeVar[Domme_amount_of_edges]=[Domme_amount_of_edges]-[#Random(4,6)]
@NullResponse @ChangeVar[Domme_amount_of_edges_start]=[Domme_amount_of_edges]+[0]
@NullResponse @RapidCodeOff

And now... @Goto(Start_edging)

(Start_edging)
#Edge @RTOff @Edge(NoHold) @Goto(Command_centre)

(Start_edging_for_the_last_time)
@Group(D) @NullResponse @Chance10(Long_edge)
@Group(D) @NullResponse @Chance05(Extreme_edge)
@Group(D) #Edge @RTOff @Edge(Hold) @Goto(Command_centre)
@Group(D3) You may make him edge if you want now #Contact3 @RTOff
@Group(D3) @Contact3 I'm glad you asked that
@Group(D3) @Contact3 Get ready #SubName
@Group(D3) @Contact3 I'll make you regret having said that lie!
@Group(D3) @NullResponse @Chance30(Long_edge)
@Group(D3) @NullResponse @Chance15(Extreme_edge)
@Group(D3) @Contact3 #Edge @RTOff @Edge(Hold) @Goto(Command_centre)

(Long_edge)
@Group(D) #Edge @RTOff @Edge(LongHold) @TempFlag(Mind_blowing_long_edge_hold) @Goto(Command_centre)
@Group(D3) @Contact3 #Edge @RTOff @Edge(LongHold) @TempFlag(Mind_blowing_long_edge_hold) @Goto(Command_centre)

(Extreme_edge)
@Group(D) #Edge @RTOff @Edge(ExtremeHold) @TempFlag(Mind_blowing_extreme_edge_hold) @Goto(Command_centre)
@Group(D3) @Contact3 #Edge @RTOff @Edge(ExtremeHold) @TempFlag(Mind_blowing_extreme_edge_hold) @Goto(Command_centre)

(Command_centre)
@NullResponse @RapidCodeOn
@NullResponse @ChangeVar[Domme_amount_of_edges]=[Domme_amount_of_edges]-[1]
@NullResponse @If[Domme_amount_of_edges]=[1]Then(One_last_edge_to_give)
@NullResponse @If[Domme_amount_of_edges]=[0]Then(Finished_edging)
@NullResponse @RapidCodeOff
@NullResponse @Goto(BnB Slideshow, Boob Cooldown, Boob Cooldown 2, Butt Cooldown, Butt Cooldown 2, Could Let You Rest, Edge Count, Even When These Edges Are Done, I Could Let You Rest, I Love Playing Games, It's Kinda Funny, Know What'd Be Funny, Pause For Edge Count, Probably In A Hurry, Stare At This Picture, This Many Edges Left, Wait For It, Wait For It JK, We Should Play More, Who Has A Nicer Ass)

(BnB Slideshow)
#LetTheEdgeFade 
As long as you're cooling down 
I've got a slideshow to keep you occupied... @Chance50(Boob Show)
The sexiest asses I found online #GeneralTime #Grin @Slideshow(Butts) @SlideshowOn @Goto(Slides Loaded)
(Boob Show)
The best breasts on the internets #Lol @Slideshow(Boobs) @SlideshowOn
(Slides Loaded)
Go ahead and stare while you cool down
It's okay if gets a little uncomfortable
and you start to squirm
After all
This is to keep you from getting bored
Not keep you from aching #Grin
In fact
you should enjoy it while it lasts
Because once it's over
you're going right back to the edge #EmoteHappy @Wait(#Random(10,30))
Okay, that's enough @SlideshowOff @Goto(Start_edging)

(Boob Cooldown)
#LetTheEdgeFade
I think you could use some recovery time @Chance50(Boob 2)
But I wouldn't want you to get bored, so...
Here's some #Boobs for you to look at while you wait #Grin @ShowBoobsImage @LockImages
I know guys like a nice, full pair of #Boobs
Just like I like a nice, full pair of #Balls #Lol
And yours aren't gonna get any fuller staring at that picture, so... @UnlockImages @Goto(Start_edging)
(Boob 2)
But I don't want you to get <i>too</i> comfortable, so here's some #Boobs #Lol @ShowBoobsImage @LockImages
Yeah, making #Boobs appear is kinda like my super power
Just like it's <i>your</i> kryptonite #Grin
Making you suffer and writhe
Making you weaker for me
And making it all the more vicious 
When I tell you to edge again @UnlockImages @Goto(Start_edging)

(Boob Cooldown 2)
Here's some more #Boobs for you to relax to #Grin @ShowBoobsImage @LockImages @Chance50(Then Again Boob)
Maybe relax isn't the best word
Suffer to?
Squirm to?
Ache to?
Fuck it @RapidTextOn
Let's just go with all of the above #Lol @UnlockImages @Goto(Start_edging)
(Then Again Boob)
Just kidding #Lol @RapidTextOn @UnlockImages @Goto(Start_edging)

(Butt Cooldown)
#LetTheEdgeFade
I think I'll let you relax for a minute @Chance50(Butt 2)
While you stare at this sexy ass and try not to squirm #Grin @ShowButtImage @LockImages
I bet you're looking at it and thinking
"Fuck, do I or don't I want to stroke to that?"
Don't worry #PetName
You won't have to debate that for very much longer #Lol @UnlockImages @Goto(Start_edging)
(Butt 2)
Assuming you even <i>can</i> relax while staring at an ass this hot #Lol @ShowButtImage @LockImages
Try not to squirm too much though
You don't have much of a break until the next edge
And that #Cock needs to recover if it's going to finish the remaining @ShowVar[Domme_amount_of_edges] #Grin
Then again
Maybe I don't <i>want</i> you to recover
Maybe I just want you to suffer, so... @UnlockImages @Goto(Start_edging)

(Butt Cooldown 2)
Here's another sexy ass to cool down to #Grin @ShowButtImage @LockImages @Chance50(Then Again Butt)
Just follow the shape of her curves
Imagine how how her ass would feel in your palms
Or the moans she would make if you spanked it
Me, on the other hand...
I would rather hear the moans <i>you</i> make having to edge again #Grin @UnlockImages @Goto(Start_edging)
(Then Again Butt)
Then again, you'll never finish your edges ataring at butts all day, so... @UnlockImages @Goto(Start_edging)

(Could Let You Rest)
I could let you rest for a minute @Chance50(You Could Probably Use It)
But I won't #Grin @RapidTextOn @Goto(Start_edging)
(You Could Probably Use It)
You could probably use it
But the more you rest, the more that desperation's gonna fade, so... @RapidTextOn @Goto(Start_edging)

(Edge Count)
#LetTheEdgeFade
@ShowVar[Domme_amount_of_edges] edges left to go
I wonder what's harder on you
Doing these edges for me
or the things I do to you between each one #Grin @Goto(Start_edging)

(Even When These Edges Are Done)
#LetTheEdgeFade
Even when these edges are done
Your #Cock still won't be free of #Me @Chance50(Stay In Debt)
I might let you have a little break
Or I might just make you keep on edging for me @RapidTextOn
Just because I can #Grin @RapidTextOff @Goto(Start_edging)
(Stay In Debt)
You can pay off all the edges you want
But at the end of the day when the stroking is done
And you're throbbing, aching with desperation
That #Cock still belongs to me #Grin @Goto(Start_edging)

(I Could Let You Rest)
I could let you rest for a bit @Chance50(You Gotta Be Aching)
But I just don't fucking want to #Grin @Goto(Start_edging)
(You Gotta Be Aching)
I mean, you <i>gotta</i> be aching right now 
But oh yeah @RapidTextOn
That's kinda the point #Lol @Goto(Start_edging)

(I Love Playing Games)
#LetTheEdgeFade
I love playing games like this @Chance50(Board Game Talk)
The choices...
The consequences...
It's nothing I can't make you do already
But I love knowing each of these edges, well
You brought them on yourself #Grin @Goto(Start_edging)
(Board Game Talk)
If we ever played board games together
I'd make sure every game would have some element of risk to it
A certain amount of denial if you lose
Edging every time I rolled a six
You don't even wanna know what I would do to you for rolling doubles #Grin @Goto(Start_edging)

(It's Kinda Funny)
It's kinda funny @Chance50(Thought of Debt)
I don't need games like this to make you edge
But it's just so much fun playing games when there's something at stake #EmoteHappy @Chance50(Denial On The Line)
@NullResponse @Goto(Start_edging)
(Thought of Debt)
The thought of you being in debt
And the only way you can pay it off is to edge
I think I would be a pretty good edge collector
Practice makes perfect after all #Grin @Goto(Start_edging)
(Denial On The Line)
Maybe next time we'll play for even higher stakes
Like when... @RapidTextOn
Or if...
You get to cum again #Grin @RapidTextOff @Goto(Start_edging)

(Know What'd Be Funny)
#LetTheEdgeFade
You know what would be funny? @Chance50(This Would Be Funny)
If after you were done giving me these edges
I made you edge some more for me @RapidTextOn
Just because I can #Grin @Goto(Start_edging)
(This Would Be Funny)
This... @RapidTextOn @Goto(Start_edging)

(Pause For Edge Count)
#LetTheEdgeFade
This is how many edges you have left -> @ShowVar[Domme_amount_of_edges] @Goto(This is Ass, This is Boobs, This is Random Pic)
(This is Ass)
This is a sexy ass @ShowButtImage @Goto(This Is Me Telling You To Edge)
(This is Boobs)
This is a pair of #Boobs @ShowBoobsImage @Goto(This Is Me Telling You To Edge)
(This is Random Pic)
This is a hot fucking picture I just found @ShowBlogImage
(This Is Me Telling You To Edge)
And <i>this</i> is me telling you to edge again @RapidTextOn @Goto(Start_edging)

(Probably In A Hurry)
You're probably in a hurry to finish these edges, so... @RapidTextOn @Goto(Start_edging)

(Stare At This Picture)
Now just stare at this picture until I tell you to edge again @ShowBlogImage @Wait(#Random(15,60)) @Goto(Start_edging)

(This Many Edges Left)
@ShowVar[Domme_amount_of_edges] edges left #SubName @Wait(#Random(5,20)) @Goto(Start_edging)

(Wait For It)
Wait for it... @Wait(#Random(5,20)) @Chance20(Start_edging)
<i>Wait</i> for it... @Wait(#Random(5,20)) @Chance40(Start_edging)
Keep waiting for it... @Wait(#Random(5,20)) @Chance60(Start_edging)
<i>Almost</i> there... @Wait(#Random(5,20)) @Chance80(Start_edging)
#SubName... @Wait(#Random(5,20)) @Goto(Start_edging)

(Wait For It JK)
Wait for it... @Chance50(Fuck That)
Just kidding #Lol @RapidTextOn @Goto(Start_edging)
(Fuck That)
Fuck that #Lol @RapidTextOn @Goto(Start_edging)

(We Should Play More)
We should play games like this more often @Chance50(Direct Control)
I like the competition
Not knowing the outcome
Maybe I'll win big and score a lot of edges
Maybe you'll get lucky and score a lot of tokens
Either way, you have to come back to chat with me eventually
And that's when I show you that house <i>always</i> wins #Grin @Goto(Start_edging)
(Direct Control)
I know I have to give up a little direct control
But I think it's kinda hot leaving the fate of your #Cock up to chance once in a while
How much pleasure you feel @RapidTextOn
How much agony you endure
All down to the roll of the dice
The flip of a card
Holding your breath as your entire destiny unravels in a second @RapidTextOff
All it takes to feel a rush like that...
Is for the stakes to be high enough #Grin @Goto(Start_edging)

(Who Has A Nicer Ass)
#LetTheEdgeFade
Who has a nicer ass: @RapidTextOn
Me
or this girl? @ShowButtImage @RapidTextOff @LockImages
[you] So you think my ass is better... @Goto(Good Thing Asskisser) @UnlockImages
[she, her, that] Oh really #Lol
@DifferentAnswer Me or her #SubName?
I appreciate your honesty #SubName #EmoteHappy @SetVar[Domme_amount_of_edges_Add]=[#Random(5,10)]
But I still added @ShowVar[Domme_amount_of_edges_Add] edges to what you owe me for not picking mine :P
@NullResponse @RapidCodeOn
@NullResponse @ChangeVar[Domme_amount_of_edges]=[Domme_amount_of_edges]+[Domme_amount_of_edges_Add] @UnlockImages
@NullResponse @RapidCodeOff
@NullResponse @Goto(Start_edging)
(Good Thing Asskisser)
I guess that's a good thing
Since you apparently like to kiss it so much #Lol @Goto(Start_edging)

(One_last_edge_to_give)
I could let you rest for a bit @Chance50(You Gotta Be Aching last time)
But I just don't fucking want to #Grin @Goto(Start_edging_for_the_last_time)
(You Gotta Be Aching last time)
I mean, you <i>gotta</i> be aching right now 
But...
yeah @RTOn
That's kinda the point #Lol @Goto(Start_edging_for_the_last_time)

(Finished_edging)
@Group(D) #LetTheEdgeFade
@Group(D3) @Contact3 #LetTheEdgeFade
@Group(D) That was the last edge you owed me #SubName
@Group(D3) @Contact3 That was the last edge you owed us #SubName
@Group(D) I hope you had as much fun as I did #EmoteHappy @Chance50(Seem_shocked) @Goto(Start_stroking)
@Group(D3) @Contact3 I hope you had as much fun as we did #EmoteHappy @Chance50(Seem_shocked) @Goto(Start_stroking)
(Seem_shocked)
Actually you seem a bit shocked
@ShowVar[Domme_amount_of_edges_start] edges in a row were too much for your #Cock, huh? @CheckFlag(Mind_blowing_long_edge_hold) @CheckFlag(Mind_blowing_extreme_edge_hold) @Goto(Start_stroking)

(Mind_blowing_long_edge_hold)
@Group(D) Or was it the long edge that I made you hold that shocked you so much? #Grin @Goto(You_should_have_thought_that_before)
@Group(D3) @Contact3 Or was it the long edge that I made you hold that shocked you so much? #Grin @Goto(You_should_have_thought_that_before)
(Mind_blowing_extreme_edge_hold)
@Group(D) Or was it the extremely long edge that I made you hold that shocked you so much? #Grin @Goto(You_should_have_thought_that_before)
@Group(D3) @Contact3 Or was it the extremely long edge that I made you hold that shocked you so much? #Grin @Goto(You_should_have_thought_that_before)
(You_should_have_thought_that_before)
Well... You should have thought that before
I hope you learned the lesson:
<i>NEVER</i> lie to #Me!

@NullResponse @RapidCodeOn
@NullResponse @DeleteVar[Domme_amount_of_edges,Domme_amount_of_edges_2,Domme_amount_of_edges_Add,Domme_amount_of_edges_start,Sub_amount_of_edges]
@NullResponse @RapidCodeOff

(Goodbye_time)
@Contact2 Well, #DomName, I have to go now
@Contact3 Well, #DomName, I have to go now
@Group(D2) Already?
@Group(D2) I was hoping you could stay with us a bit more #EmoteSad
@Group(D3) Already?
@Group(D3) I was hoping you could stay with us a bit more #EmoteSad
@Contact2 I promise next time I'll spend more time with you #ShortName...
@Contact3 I promise next time I'll spend more time with you #ShortName...
@Contact2 ...and obviously with you #SubName #Grin
@Contact3 ...and obviously with you #SubName #Grin
@Contact3 You know, I also have some responsibilities...
@Group(D3) Your slaves need you...
@Contact3 Yeah...
@Contact3 But I had fun playing with you and #SubName #GeneralTime
@Contact3 So if you want to invite me again we could play other evil games
@Contact3 I have many other cruel ideas to #Torture your #PetName... #Grin
@Group(D3) I can't wait until next time #Contact3!
@Contact3 Yeah, I know... But I promise it'll be worth #ShortName
@Group(D2) Ok then...
@Group(D3) Ok then...
@Contact2 #Bye #DomName!
@Group(D2) #Bye #Contact2!
@Contact2 #Bye #SubName!
@NullResponse @Wait(2)
@NullResponse @RemoveContact2
@Contact3 #Bye #DomName!
@Group(D3) #Bye #Contact3!
@Contact3 #Bye #SubName!
@NullResponse @Wait(2)
@NullResponse @RemoveContact3
@RT(So far it has been a great day,, but I think it could still improve, So far it has been a great day,, but I think we could still have many surprises)
I'll give you a few seconds to recover now. Then you'll go back to #Stroking @Wait(#Random(20,25)) @Goto(Start_stroking)

(End)
@NullResponse @RapidCodeOn
@NullResponse @ApathyLevelUp
@NullResponse @MoodWorst
@NullResponse @RapidCodeOff
Poor...poor #RandomName!
Do you want to see what happens if one of my slaves makes me angry?
Are you sure you wanna see this side of #Me?
That's what happens to him...

(Loop_CBT)
@NullResponse @RTOn
@NullResponse @CBTBalls
Not enough #PetName! You're gonna take care of that #Cock of mine now
@NullResponse @CBTCock
Back to your #Balls now...
@NullResponse @CBTBalls @Chance40(You_are_not_suffering_enough) @Goto(Question)

(You_are_not_suffering_enough)
You are not suffering enough
I think you should #Torture more your #Cock and #Balls #Grin
@NullResponse @CBTCock
@NullResponse @CBTBalls
@NullResponse @RTOff

(Question)
Do you like seeing me angry so far? @Timeout(7, Answer_me)
[yes] I guess I'll continue since you like it so much @Goto(Loop_CBT)
[no] I hope you learned the lesson @Goto(Lesson_learned)
@DifferentAnswer #YesorNo

(Answer_me)
I didn't ask you write me a poem!
How does it take you to answer? @Goto(Question)

(Lesson_learned)
<i>NEVER</i> lie to #Me!
Now get out of my way or I'll start beating you again @Chance55(One_last_thing) @EndTease

(One_last_thing)
One last thing #PetName...
For the next 2 days you are forbidden to:
1) watch or play anything that has to do with sex: that means no porn videos, no webteases...
2) #Stroke, have sex and #Cum
3) show up here again @SetDate(tgr8_Not_show_up, 2 days) @SetFlag(tgr8_Flag_not_show_up)
If you have a chastity cage I recommend you use it
REMEMBER:
if you don't respect any of these three rules I will punish you. You've been warned #SubName! @Wait(2)
@EndTease

(No)
I appreciate your honesty #SubName #EmoteHappy @CheckFlag(Rules_explained) @Goto(Explain_rules)

(Rules_explained)
but I already explained you the rules and still you're not ready @TempFlag(Stay_or_leave?)
What should I do with you?!
Actually I think I know what I'm #Gonna to do you... @Goto(Start_CBT)

(Explain_rules)
but it doesn't make sense to me: you're not ready...
still you start a session with #Me?

(Rules)
I have two simple rules that you <I>MUST</i> respect:
RULE 1 - When a session starts I MUST be ready
RULE 2 - If I'm not ready when the session starts I MUST inform #DomHonorific #DomName and accept any punishment #DomHonorific #DomName decides
Since it's the first time I explain you my rules you won't be punished
But remember...
You will not be given a second chance, understood? @SetFlag(Rules_explained)
[yes, understand #DomHonorific, understood #DomHonorific, ok #DomHonorific, Yes #DomHonorific, Understand #DomHonorific, Understood #DomHonorific, OK #DomHonorific] #Good!
@DifferentAnswer Do you understand #SubName?

(Stay_or_leave?)
I'm gonna ask this once:
will you stay or will you leave?
[stay, Stay, stay #DomHonorific, Stay #DomHonorific] I'm glad you've changed your mind! #EmoteHappy @Goto(Start_stroking)
[leave, Leave, leave #DomHonorific, Leave #DomHonorific] If that's your choice... @Goto(Homework_to_do_1,Homework_to_do_2)
@DifferentAnswer Stay or leave #PetName?

(Homework_to_do_1)
Before you leave I want you to do something for me
I'm sending you some homework for you to do @SendDailyTasks
Read and do every single task
I think you're #Gonna find them pretty intense...
That's all you get for #GeneralTime #SubName
I look forward to teasing you again soon!
#Bye @Wait(2)
@EndTease

(Homework_to_do_2)
Don't have time to stay and play with me #GeneralTime huh?
That's okay, I'll give you something to keep your mind on me for a while #Grin
One sec @Wait(10)
Here you go #EmoteHappy @SendDailyTasks
I hope you have fun with these #PetName
I know I'll have fun thinking about you doing them #Grin
#Bye @Wait(2)
@NullResponse @RapidCodeOn
@NullResponse @DeleteFlag(Stay_or_leave?)
@NullResponse @RapidCodeOff
@EndTease